#include <my_head.h>

int main(int argc, const char *argv[]){
    int a = 10;
    pid_t pid = 0;
    if(-1 == (pid = fork())){
        ERR_LOG("fork error");
    }else if(0 < pid){
        while(1){
            printf("父进程 : a = %d  &a = %p\n", a, &a);
            sleep(1);
        }
    }else if(0 == pid){
        printf("子进程 : a = %d  &a = %p\n", a, &a);
        sleep(5);
        a = 100; // 此时发生 写时拷贝
        // 我们这里打印的都是 虚拟内存的地址编号 所以暂时没法验证重新映射的问题
        printf("子进程 : a = %d  &a = %p\n", a, &a);
    }
    return 0;
}